package com.ljh.common;

import lombok.Getter;
import lombok.Setter;

/**
 * @author ：刘剑鸿
 * @date ：Created in 2021/10/28 9:17
 * @description：封装返回数据的实体，适配layui table数据
 * @modified By：
 * @version: $
 */
@Setter
@Getter
public class JsonData {
    private Integer code;//状态码
    private String msg;//响应信息
    private Long count;//分页条数
    private Object data;//响应结果数据


    public JsonData(Integer code){
        this.code = code;
    }

    /*
    * 成功返回，带有数据和消息
    * */
    public static JsonData success(Long count,Object data,String msg){
        JsonData jsonData = new JsonData(0);
        jsonData.count = count;
        jsonData.data = data;
        jsonData.msg = msg;
        return jsonData;
    }
    /*
    成功返回 data + count
    * */
    public static JsonData success(Long count,Object data){
        JsonData jsonData =new JsonData(0);
        jsonData.count = count;
        jsonData.data = data;
        return jsonData;
    }
    /*
    成功返回，带消息
    * */
    public static JsonData success(String msg){
        JsonData jsonData = new JsonData(0);
        jsonData.msg = msg;
        return jsonData;
    }
    /*
    * 成功返回，未带消息和数据
    * */
    public static JsonData success(){
        JsonData jsonData = new JsonData(0);
        return jsonData;
    }
    /**
     * 成功返回，带消息和数据
     */
    public static JsonData success(String msg,Object data){
        JsonData jsonData = new JsonData(0);
        jsonData.msg = msg;
        jsonData.data = data;
        return jsonData;
    }
    /**
     * 失败返回，带消息
     */
    public static JsonData fail(String msg){
        JsonData jsonData = new JsonData(1);
        jsonData.msg = msg;
        return jsonData;
    }
}
